<template>
	<!-- 猜你喜欢 -->
	<view>
		<view class="caption">
			<text class="text">猜你喜欢</text>
		</view>
		<view class="guess">
			<navigator class="guess-item" v-for="(item, index) in guessLikeList" :key="index" :url="`/pages/goods/goods?id=4007498`">
				<image class="image" mode="aspectFill"
					:src="item.picture"></image>
				<view class="name"> {{item.name}} </view>
				<view class="price">
					<text class="small">¥</text>
					<text>{{item.price}}</text>
				</view>
			</navigator>
		</view>
		<view class="loading-text"> {{finish ? "没有更多数据~" : "正在加载..."}} </view>
	</view>
</template>

<script>
	import { getHomeGuessLike } from '@/services/home.js'
	export default {
		name: '',
		data() {
			return {
				guessLikeList: [],
				page: 1,
				pageSize: 10,
				finish: false,
			}
		},
		created(){
			this.getHomeGuessLikeList()
		},
		methods: {
			// 获取猜你喜欢数据
			async getHomeGuessLikeList(){
				if(this.finish){
					return uni.showToast({
						icon: 'none',
						title: "没有更多数据~"
					})
				}
				const res = await getHomeGuessLike(this.page, this.pageSize)
				// this.guessLikeList = res.result.items
				this.guessLikeList.push(...res.result.items)
				this.page < res.result.pages ? this.page++ : this.finish = true;
			},
			// 重置数据
			reset(){
				this.page = 1;
				this.guessLikeList = [];
				this.finish = false;
			}
		}
	}
</script>

<style lang="scss">
	:host {
		display: block;
	}

	/* 分类标题 */
	.caption {
		display: flex;
		justify-content: center;
		line-height: 1;
		padding: 36rpx 0 40rpx;
		font-size: 32rpx;
		color: #262626;

		.text {
			display: flex;
			justify-content: center;
			align-items: center;
			padding: 0 28rpx 0 30rpx;

			&::before,
			&::after {
				content: '';
				width: 20rpx;
				height: 20rpx;
				background-image: url(@/static/images/bubble.png);
				background-size: contain;
				margin: 0 10rpx;
			}
		}
	}

	/* 猜你喜欢 */
	.guess {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		padding: 0 20rpx;

		.guess-item {
			width: 300rpx;
			padding: 24rpx 20rpx 20rpx;
			margin-bottom: 20rpx;
			border-radius: 10rpx;
			overflow: hidden;
			background-color: #fff;
		}

		.image {
			width: 304rpx;
			height: 304rpx;
		}

		.name {
			height: 75rpx;
			margin: 10rpx 0;
			font-size: 26rpx;
			color: #262626;
			overflow: hidden;
			text-overflow: ellipsis;
			display: -webkit-box;
			-webkit-line-clamp: 2;
			-webkit-box-orient: vertical;
		}

		.price {
			line-height: 1;
			padding-top: 4rpx;
			color: #cf4444;
			font-size: 26rpx;
		}

		.small {
			font-size: 80%;
		}
	}

	// 加载提示文字
	.loading-text {
		text-align: center;
		font-size: 28rpx;
		color: #666;
		padding: 20rpx 0;
	}
</style>